// 目标：实现图的邻接表并添加无向边
// TODO: 补全 add_edge 方法
#[derive(Debug)]
struct Graph {
    adjacency_list: Vec<Vec<usize>>,
}

impl Graph {
    fn new(size: usize) -> Self {
        Graph {
            adjacency_list: vec![vec![]; size],
        }
    }

    fn add_edge(&mut self, src: usize, dest: usize) {
        // 你的代码（注意无向边）
    }
}

#[test]
fn test_graph() {
    let mut graph = Graph::new(3);
    graph.add_edge(0, 1);
    assert_eq!(graph.adjacency_list[0], vec![1]);
}